﻿// 4450. 曹操的桥.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

/*
https://www.acwing.com/problem/content/4453/

曹操赤壁之战失败后，反思了己方不善水战的问题，想到了一个解决办法。

他在长江上建造了 N
 个岛屿，还建造了 M
 个桥，每个桥连接两个岛屿。

如果所有岛屿都被桥连通，那么他就可以很方便的调遣军队了。

为了不让曹操得逞，周瑜想要毁掉其中一些桥，使得其中一个或多个岛屿与其他岛屿断开连接。

不幸的是，周瑜只有一个炸弹，最多只能炸毁一座桥。

周瑜必须派士兵携带炸弹前去炸桥，桥上可能有守卫，炸桥的士兵数量不能少于桥上的守卫数量，否则任务将失败。

请问，为了使得其中一个或多个岛屿与其他岛屿断开连接，周瑜至少需要派遣多少士兵去炸桥。

输入格式
输入最多包含 10
 个测试数据。

每组数据第一行包含两个整数 N,M
。

接下来 M
 行，每行包含三个整数 U,V,W
，表示有一座桥连接岛 U
 和岛 V
，桥上的守卫数量为 W
。

岛屿编号为 1∼N
。

当输入一行为 0 0 时，表示输入结束。

输出格式
每组数据输出一行答案，一个整数，表示最少所需派遣士兵数量，如果目的不可能达成，则输出 −1
。

数据范围
2≤N≤1000
,
1≤M≤N2
,
1≤U,V≤N
,
U≠V
,
0≤W≤10000
。
一个输入的 M
 之和不超过 106
。

输入样例：
3 3
1 2 7
2 3 4
3 1 4
3 2
1 2 7
2 3 4
4 2
1 2 1
3 4 1
2 1
1 2 0
0 0
输出样例：
-1
4
0
1
*/
int main()
{
    std::cout << "Hello World!\n";
}

 